#ifndef GUARD_CONSTANTS_MAP_GROUPS_H
#define GUARD_CONSTANTS_MAP_GROUPS_H

// Map Group 0
#define MAP_PETALBURG_CITY   (0 | (0 << 8))
#define MAP_SLATEPORT_CITY   (1 | (0 << 8))
#define MAP_MAUVILLE_CITY    (2 | (0 << 8))
#define MAP_RUSTBORO_CITY    (3 | (0 << 8))
#define MAP_FORTREE_CITY     (4 | (0 << 8))
#define MAP_LILYCOVE_CITY    (5 | (0 << 8))
#define MAP_MOSSDEEP_CITY    (6 | (0 << 8))
#define MAP_SOOTOPOLIS_CITY  (7 | (0 << 8))
#define MAP_EVER_GRANDE_CITY (8 | (0 << 8))
#define MAP_LITTLEROOT_TOWN  (9 | (0 << 8))
#define MAP_OLDALE_TOWN      (10 | (0 << 8))
#define MAP_DEWFORD_TOWN     (11 | (0 << 8))
#define MAP_LAVARIDGE_TOWN   (12 | (0 << 8))
#define MAP_FALLARBOR_TOWN   (13 | (0 << 8))
#define MAP_VERDANTURF_TOWN  (14 | (0 << 8))
#define MAP_PACIFIDLOG_TOWN  (15 | (0 << 8))
#define MAP_ROUTE101         (16 | (0 << 8))
#define MAP_ROUTE102         (17 | (0 << 8))
#define MAP_ROUTE103         (18 | (0 << 8))
#define MAP_ROUTE104         (19 | (0 << 8))
#define MAP_ROUTE105         (20 | (0 << 8))
#define MAP_ROUTE106         (21 | (0 << 8))
#define MAP_ROUTE107         (22 | (0 << 8))
#define MAP_ROUTE108         (23 | (0 << 8))
#define MAP_ROUTE109         (24 | (0 << 8))
#define MAP_ROUTE110         (25 | (0 << 8))
#define MAP_ROUTE111         (26 | (0 << 8))
#define MAP_ROUTE112         (27 | (0 << 8))
#define MAP_ROUTE113         (28 | (0 << 8))
#define MAP_ROUTE114         (29 | (0 << 8))
#define MAP_ROUTE115         (30 | (0 << 8))
#define MAP_ROUTE116         (31 | (0 << 8))
#define MAP_ROUTE117         (32 | (0 << 8))
#define MAP_ROUTE118         (33 | (0 << 8))
#define MAP_ROUTE119         (34 | (0 << 8))
#define MAP_ROUTE120         (35 | (0 << 8))
#define MAP_ROUTE121         (36 | (0 << 8))
#define MAP_ROUTE122         (37 | (0 << 8))
#define MAP_ROUTE123         (38 | (0 << 8))
#define MAP_ROUTE124         (39 | (0 << 8))
#define MAP_ROUTE125         (40 | (0 << 8))
#define MAP_ROUTE126         (41 | (0 << 8))
#define MAP_ROUTE127         (42 | (0 << 8))
#define MAP_ROUTE128         (43 | (0 << 8))
#define MAP_ROUTE129         (44 | (0 << 8))
#define MAP_ROUTE130         (45 | (0 << 8))
#define MAP_ROUTE131         (46 | (0 << 8))
#define MAP_ROUTE132         (47 | (0 << 8))
#define MAP_ROUTE133         (48 | (0 << 8))
#define MAP_ROUTE134         (49 | (0 << 8))
#define MAP_UNDERWATER1      (50 | (0 << 8))
#define MAP_UNDERWATER2      (51 | (0 << 8))
#define MAP_UNDERWATER3      (52 | (0 << 8))
#define MAP_UNDERWATER4      (53 | (0 << 8))

// Map Group 1
#define MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F    (0 | (1 << 8))
#define MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F    (1 | (1 << 8))
#define MAP_LITTLEROOT_TOWN_MAYS_HOUSE_1F        (2 | (1 << 8))
#define MAP_LITTLEROOT_TOWN_MAYS_HOUSE_2F        (3 | (1 << 8))
#define MAP_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB (4 | (1 << 8))

// Map Group 2
#define MAP_OLDALE_TOWN_HOUSE1            (0 | (2 << 8))
#define MAP_OLDALE_TOWN_HOUSE2            (1 | (2 << 8))
#define MAP_OLDALE_TOWN_POKEMON_CENTER_1F (2 | (2 << 8))
#define MAP_OLDALE_TOWN_POKEMON_CENTER_2F (3 | (2 << 8))
#define MAP_OLDALE_TOWN_MART              (4 | (2 << 8))

// Map Group 3
#define MAP_DEWFORD_TOWN_HOUSE1            (0 | (3 << 8))
#define MAP_DEWFORD_TOWN_POKEMON_CENTER_1F (1 | (3 << 8))
#define MAP_DEWFORD_TOWN_POKEMON_CENTER_2F (2 | (3 << 8))
#define MAP_DEWFORD_TOWN_GYM               (3 | (3 << 8))
#define MAP_DEWFORD_TOWN_HALL              (4 | (3 << 8))
#define MAP_DEWFORD_TOWN_HOUSE2            (5 | (3 << 8))

// Map Group 4
#define MAP_LAVARIDGE_TOWN_HERB_SHOP         (0 | (4 << 8))
#define MAP_LAVARIDGE_TOWN_GYM_1F            (1 | (4 << 8))
#define MAP_LAVARIDGE_TOWN_GYM_B1F           (2 | (4 << 8))
#define MAP_LAVARIDGE_TOWN_HOUSE             (3 | (4 << 8))
#define MAP_LAVARIDGE_TOWN_MART              (4 | (4 << 8))
#define MAP_LAVARIDGE_TOWN_POKEMON_CENTER_1F (5 | (4 << 8))
#define MAP_LAVARIDGE_TOWN_POKEMON_CENTER_2F (6 | (4 << 8))

// Map Group 5
#define MAP_FALLARBOR_TOWN_MART              (0 | (5 << 8))
#define MAP_FALLARBOR_TOWN_CONTEST_LOBBY     (1 | (5 << 8))
#define MAP_FALLARBOR_TOWN_CONTEST_HALL      (2 | (5 << 8))
#define MAP_FALLARBOR_TOWN_POKEMON_CENTER_1F (3 | (5 << 8))
#define MAP_FALLARBOR_TOWN_POKEMON_CENTER_2F (4 | (5 << 8))
#define MAP_FALLARBOR_TOWN_HOUSE1            (5 | (5 << 8))
#define MAP_FALLARBOR_TOWN_HOUSE2            (6 | (5 << 8))

// Map Group 6
#define MAP_VERDANTURF_TOWN_CONTEST_LOBBY           (0 | (6 << 8))
#define MAP_VERDANTURF_TOWN_CONTEST_HALL            (1 | (6 << 8))
#define MAP_VERDANTURF_TOWN_MART                    (2 | (6 << 8))
#define MAP_VERDANTURF_TOWN_POKEMON_CENTER_1F       (3 | (6 << 8))
#define MAP_VERDANTURF_TOWN_POKEMON_CENTER_2F       (4 | (6 << 8))
#define MAP_VERDANTURF_TOWN_WANDAS_HOUSE            (5 | (6 << 8))
#define MAP_VERDANTURF_TOWN_FRIENDSHIP_RATERS_HOUSE (6 | (6 << 8))
#define MAP_VERDANTURF_TOWN_HOUSE                   (7 | (6 << 8))

// Map Group 7
#define MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_1F (0 | (7 << 8))
#define MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_2F (1 | (7 << 8))
#define MAP_PACIFIDLOG_TOWN_HOUSE1            (2 | (7 << 8))
#define MAP_PACIFIDLOG_TOWN_HOUSE2            (3 | (7 << 8))
#define MAP_PACIFIDLOG_TOWN_HOUSE3            (4 | (7 << 8))
#define MAP_PACIFIDLOG_TOWN_HOUSE4            (5 | (7 << 8))
#define MAP_PACIFIDLOG_TOWN_HOUSE5            (6 | (7 << 8))

// Map Group 8
#define MAP_PETALBURG_CITY_WALLYS_HOUSE      (0 | (8 << 8))
#define MAP_PETALBURG_CITY_GYM               (1 | (8 << 8))
#define MAP_PETALBURG_CITY_HOUSE1            (2 | (8 << 8))
#define MAP_PETALBURG_CITY_HOUSE2            (3 | (8 << 8))
#define MAP_PETALBURG_CITY_POKEMON_CENTER_1F (4 | (8 << 8))
#define MAP_PETALBURG_CITY_POKEMON_CENTER_2F (5 | (8 << 8))
#define MAP_PETALBURG_CITY_MART              (6 | (8 << 8))

// Map Group 9
#define MAP_SLATEPORT_CITY_STERNS_SHIPYARD_1F (0 | (9 << 8))
#define MAP_SLATEPORT_CITY_STERNS_SHIPYARD_2F (1 | (9 << 8))
#define MAP_SLATEPORT_CITY_CONTEST_LOBBY      (2 | (9 << 8))
#define MAP_SLATEPORT_CITY_CONTEST_HALL       (3 | (9 << 8))
#define MAP_SLATEPORT_CITY_HOUSE1             (4 | (9 << 8))
#define MAP_SLATEPORT_CITY_POKEMON_FAN_CLUB   (5 | (9 << 8))
#define MAP_SLATEPORT_CITY_OCEANIC_MUSEUM_1F  (6 | (9 << 8))
#define MAP_SLATEPORT_CITY_OCEANIC_MUSEUM_2F  (7 | (9 << 8))
#define MAP_SLATEPORT_CITY_HARBOR             (8 | (9 << 8))
#define MAP_SLATEPORT_CITY_HOUSE2             (9 | (9 << 8))
#define MAP_SLATEPORT_CITY_POKEMON_CENTER_1F  (10 | (9 << 8))
#define MAP_SLATEPORT_CITY_POKEMON_CENTER_2F  (11 | (9 << 8))
#define MAP_SLATEPORT_CITY_MART               (12 | (9 << 8))

// Map Group 10
#define MAP_MAUVILLE_CITY_GYM               (0 | (10 << 8))
#define MAP_MAUVILLE_CITY_BIKE_SHOP         (1 | (10 << 8))
#define MAP_MAUVILLE_CITY_HOUSE1            (2 | (10 << 8))
#define MAP_MAUVILLE_CITY_GAME_CORNER       (3 | (10 << 8))
#define MAP_MAUVILLE_CITY_HOUSE2            (4 | (10 << 8))
#define MAP_MAUVILLE_CITY_POKEMON_CENTER_1F (5 | (10 << 8))
#define MAP_MAUVILLE_CITY_POKEMON_CENTER_2F (6 | (10 << 8))
#define MAP_MAUVILLE_CITY_MART              (7 | (10 << 8))

// Map Group 11
#define MAP_RUSTBORO_CITY_DEVON_CORP_1F     (0 | (11 << 8))
#define MAP_RUSTBORO_CITY_DEVON_CORP_2F     (1 | (11 << 8))
#define MAP_RUSTBORO_CITY_DEVON_CORP_3F     (2 | (11 << 8))
#define MAP_RUSTBORO_CITY_GYM               (3 | (11 << 8))
#define MAP_RUSTBORO_CITY_POKEMON_SCHOOL    (4 | (11 << 8))
#define MAP_RUSTBORO_CITY_POKEMON_CENTER_1F (5 | (11 << 8))
#define MAP_RUSTBORO_CITY_POKEMON_CENTER_2F (6 | (11 << 8))
#define MAP_RUSTBORO_CITY_MART              (7 | (11 << 8))
#define MAP_RUSTBORO_CITY_FLAT1_1F          (8 | (11 << 8))
#define MAP_RUSTBORO_CITY_FLAT1_2F          (9 | (11 << 8))
#define MAP_RUSTBORO_CITY_HOUSE1            (10 | (11 << 8))
#define MAP_RUSTBORO_CITY_CUTTERS_HOUSE     (11 | (11 << 8))
#define MAP_RUSTBORO_CITY_HOUSE2            (12 | (11 << 8))
#define MAP_RUSTBORO_CITY_FLAT2_1F          (13 | (11 << 8))
#define MAP_RUSTBORO_CITY_FLAT2_2F          (14 | (11 << 8))
#define MAP_RUSTBORO_CITY_FLAT2_3F          (15 | (11 << 8))
#define MAP_RUSTBORO_CITY_HOUSE3            (16 | (11 << 8))

// Map Group 12
#define MAP_FORTREE_CITY_HOUSE1            (0 | (12 << 8))
#define MAP_FORTREE_CITY_GYM               (1 | (12 << 8))
#define MAP_FORTREE_CITY_POKEMON_CENTER_1F (2 | (12 << 8))
#define MAP_FORTREE_CITY_POKEMON_CENTER_2F (3 | (12 << 8))
#define MAP_FORTREE_CITY_MART              (4 | (12 << 8))
#define MAP_FORTREE_CITY_HOUSE2            (5 | (12 << 8))
#define MAP_FORTREE_CITY_HOUSE3            (6 | (12 << 8))
#define MAP_FORTREE_CITY_HOUSE4            (7 | (12 << 8))
#define MAP_FORTREE_CITY_HOUSE5            (8 | (12 << 8))
#define MAP_FORTREE_CITY_DECORATION_SHOP   (9 | (12 << 8))

// Map Group 13
#define MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_1F        (0 | (13 << 8))
#define MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_2F        (1 | (13 << 8))
#define MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_1F        (2 | (13 << 8))
#define MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F        (3 | (13 << 8))
#define MAP_LILYCOVE_CITY_CONTEST_LOBBY             (4 | (13 << 8))
#define MAP_LILYCOVE_CITY_CONTEST_HALL              (5 | (13 << 8))
#define MAP_LILYCOVE_CITY_POKEMON_CENTER_1F         (6 | (13 << 8))
#define MAP_LILYCOVE_CITY_POKEMON_CENTER_2F         (7 | (13 << 8))
#define MAP_LILYCOVE_CITY_UNUSED_MART               (8 | (13 << 8))
#define MAP_LILYCOVE_CITY_POKEMON_TRAINER_FAN_CLUB  (9 | (13 << 8))
#define MAP_LILYCOVE_CITY_HARBOR                    (10 | (13 << 8))
#define MAP_LILYCOVE_CITY_EMPTY_MAP                 (11 | (13 << 8))
#define MAP_LILYCOVE_CITY_MOVE_DELETERS_HOUSE       (12 | (13 << 8))
#define MAP_LILYCOVE_CITY_HOUSE1                    (13 | (13 << 8))
#define MAP_LILYCOVE_CITY_HOUSE2                    (14 | (13 << 8))
#define MAP_LILYCOVE_CITY_HOUSE3                    (15 | (13 << 8))
#define MAP_LILYCOVE_CITY_HOUSE4                    (16 | (13 << 8))
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F       (17 | (13 << 8))
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_2F       (18 | (13 << 8))
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_3F       (19 | (13 << 8))
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_4F       (20 | (13 << 8))
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_5F       (21 | (13 << 8))
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP  (22 | (13 << 8))
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR (23 | (13 << 8))

// Map Group 14
#define MAP_MOSSDEEP_CITY_GYM               (0 | (14 << 8))
#define MAP_MOSSDEEP_CITY_HOUSE1            (1 | (14 << 8))
#define MAP_MOSSDEEP_CITY_HOUSE2            (2 | (14 << 8))
#define MAP_MOSSDEEP_CITY_POKEMON_CENTER_1F (3 | (14 << 8))
#define MAP_MOSSDEEP_CITY_POKEMON_CENTER_2F (4 | (14 << 8))
#define MAP_MOSSDEEP_CITY_MART              (5 | (14 << 8))
#define MAP_MOSSDEEP_CITY_HOUSE3            (6 | (14 << 8))
#define MAP_MOSSDEEP_CITY_STEVENS_HOUSE     (7 | (14 << 8))
#define MAP_MOSSDEEP_CITY_HOUSE4            (8 | (14 << 8))
#define MAP_MOSSDEEP_CITY_SPACE_CENTER_1F   (9 | (14 << 8))
#define MAP_MOSSDEEP_CITY_SPACE_CENTER_2F   (10 | (14 << 8))
#define MAP_MOSSDEEP_CITY_GAME_CORNER_1F    (11 | (14 << 8))
#define MAP_MOSSDEEP_CITY_GAME_CORNER_B1F   (12 | (14 << 8))

// Map Group 15
#define MAP_SOOTOPOLIS_CITY_GYM_1F            (0 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_GYM_B1F           (1 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_1F (2 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_2F (3 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_MART              (4 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE1            (5 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE2            (6 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE3            (7 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE4            (8 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE5            (9 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE6            (10 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE7            (11 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE8            (12 | (15 << 8))

// Map Group 16
#define MAP_EVER_GRANDE_CITY_SIDNEYS_ROOM      (0 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_PHOEBES_ROOM      (1 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_GLACIAS_ROOM      (2 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_DRAKES_ROOM       (3 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_CHAMPIONS_ROOM    (4 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_CORRIDOR1         (5 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_CORRIDOR2         (6 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_CORRIDOR3         (7 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_CORRIDOR4         (8 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_CORRIDOR5         (9 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE    (10 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_HALL_OF_FAME      (11 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_POKEMON_CENTER_1F (12 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_POKEMON_CENTER_2F (13 | (16 << 8))

// Map Group 17
#define MAP_ROUTE104_MR_BRINEYS_HOUSE         (0 | (17 << 8))
#define MAP_ROUTE104_PRETTY_PETAL_FLOWER_SHOP (1 | (17 << 8))

// Map Group 18
#define MAP_ROUTE111_WINSTRATE_FAMILYS_HOUSE (0 | (18 << 8))
#define MAP_ROUTE111_OLD_LADYS_REST_STOP     (1 | (18 << 8))

// Map Group 19
#define MAP_ROUTE112_CABLE_CAR_STATION   (0 | (19 << 8))
#define MAP_MT_CHIMNEY_CABLE_CAR_STATION (1 | (19 << 8))

// Map Group 20
#define MAP_ROUTE114_FOSSIL_MANIACS_HOUSE  (0 | (20 << 8))
#define MAP_ROUTE114_FOSSIL_MANIACS_TUNNEL (1 | (20 << 8))
#define MAP_ROUTE114_LANETTES_HOUSE        (2 | (20 << 8))

// Map Group 21
#define MAP_ROUTE116_TUNNELERS_REST_HOUSE (0 | (21 << 8))

// Map Group 22
#define MAP_ROUTE117_POKEMON_DAY_CARE (0 | (22 << 8))

// Map Group 23
#define MAP_ROUTE121_SAFARI_ZONE_ENTRANCE (0 | (23 << 8))

// Map Group 24
#define MAP_METEOR_FALLS_1F_1R                    (0 | (24 << 8))
#define MAP_METEOR_FALLS_1F_2R                    (1 | (24 << 8))
#define MAP_METEOR_FALLS_B1F_1R                   (2 | (24 << 8))
#define MAP_METEOR_FALLS_B1F_2R                   (3 | (24 << 8))
#define MAP_RUSTURF_TUNNEL                        (4 | (24 << 8))
#define MAP_UNDERWATER_SOOTOPOLIS_CITY            (5 | (24 << 8))
#define MAP_DESERT_RUINS                          (6 | (24 << 8))
#define MAP_GRANITE_CAVE_1F                       (7 | (24 << 8))
#define MAP_GRANITE_CAVE_B1F                      (8 | (24 << 8))
#define MAP_GRANITE_CAVE_B2F                      (9 | (24 << 8))
#define MAP_GRANITE_CAVE_STEVENS_ROOM             (10 | (24 << 8))
#define MAP_PETALBURG_WOODS                       (11 | (24 << 8))
#define MAP_MT_CHIMNEY                            (12 | (24 << 8))
#define MAP_JAGGED_PASS                           (13 | (24 << 8))
#define MAP_FIERY_PATH                            (14 | (24 << 8))
#define MAP_MT_PYRE_1F                            (15 | (24 << 8))
#define MAP_MT_PYRE_2F                            (16 | (24 << 8))
#define MAP_MT_PYRE_3F                            (17 | (24 << 8))
#define MAP_MT_PYRE_4F                            (18 | (24 << 8))
#define MAP_MT_PYRE_5F                            (19 | (24 << 8))
#define MAP_MT_PYRE_6F                            (20 | (24 << 8))
#define MAP_MT_PYRE_EXTERIOR                      (21 | (24 << 8))
#define MAP_MT_PYRE_SUMMIT                        (22 | (24 << 8))
#define MAP_AQUA_HIDEOUT_1F                       (23 | (24 << 8))
#define MAP_AQUA_HIDEOUT_B1F                      (24 | (24 << 8))
#define MAP_AQUA_HIDEOUT_B2F                      (25 | (24 << 8))
#define MAP_UNDERWATER_SEAFLOOR_CAVERN            (26 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ENTRANCE              (27 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM1                 (28 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM2                 (29 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM3                 (30 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM4                 (31 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM5                 (32 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM6                 (33 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM7                 (34 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM8                 (35 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM9                 (36 | (24 << 8))
#define MAP_CAVE_OF_ORIGIN_ENTRANCE               (37 | (24 << 8))
#define MAP_CAVE_OF_ORIGIN_1F                     (38 | (24 << 8))
#define MAP_CAVE_OF_ORIGIN_B1F                    (39 | (24 << 8))
#define MAP_CAVE_OF_ORIGIN_B2F                    (40 | (24 << 8))
#define MAP_CAVE_OF_ORIGIN_B3F                    (41 | (24 << 8))
#define MAP_CAVE_OF_ORIGIN_B4F                    (42 | (24 << 8))
#define MAP_VICTORY_ROAD_1F                       (43 | (24 << 8))
#define MAP_VICTORY_ROAD_B1F                      (44 | (24 << 8))
#define MAP_VICTORY_ROAD_B2F                      (45 | (24 << 8))
#define MAP_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM     (46 | (24 << 8))
#define MAP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM        (47 | (24 << 8))
#define MAP_SHOAL_CAVE_LOW_TIDE_STAIRS_ROOM       (48 | (24 << 8))
#define MAP_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM        (49 | (24 << 8))
#define MAP_SHOAL_CAVE_HIGH_TIDE_ENTRANCE_ROOM    (50 | (24 << 8))
#define MAP_SHOAL_CAVE_HIGH_TIDE_INNER_ROOM       (51 | (24 << 8))
#define MAP_NEW_MAUVILLE_ENTRANCE                 (52 | (24 << 8))
#define MAP_NEW_MAUVILLE_INSIDE                   (53 | (24 << 8))
#define MAP_ABANDONED_SHIP_DECK                   (54 | (24 << 8))
#define MAP_ABANDONED_SHIP_CORRIDORS_1F           (55 | (24 << 8))
#define MAP_ABANDONED_SHIP_ROOMS_1F               (56 | (24 << 8))
#define MAP_ABANDONED_SHIP_CORRIDORS_B1F          (57 | (24 << 8))
#define MAP_ABANDONED_SHIP_ROOMS_B1F              (58 | (24 << 8))
#define MAP_ABANDONED_SHIP_ROOMS2_B1F             (59 | (24 << 8))
#define MAP_ABANDONED_SHIP_UNDERWATER1            (60 | (24 << 8))
#define MAP_ABANDONED_SHIP_ROOM_B1F               (61 | (24 << 8))
#define MAP_ABANDONED_SHIP_ROOMS2_1F              (62 | (24 << 8))
#define MAP_ABANDONED_SHIP_CAPTAINS_OFFICE        (63 | (24 << 8))
#define MAP_ABANDONED_SHIP_UNDERWATER2            (64 | (24 << 8))
#define MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS (65 | (24 << 8))
#define MAP_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS     (66 | (24 << 8))
#define MAP_ISLAND_CAVE                           (67 | (24 << 8))
#define MAP_ANCIENT_TOMB                          (68 | (24 << 8))
#define MAP_UNDERWATER_ROUTE134                   (69 | (24 << 8))
#define MAP_UNDERWATER_SEALED_CHAMBER             (70 | (24 << 8))
#define MAP_SEALED_CHAMBER_OUTER_ROOM             (71 | (24 << 8))
#define MAP_SEALED_CHAMBER_INNER_ROOM             (72 | (24 << 8))
#define MAP_SCORCHED_SLAB                         (73 | (24 << 8))
#define MAP_MAGMA_HIDEOUT_1F                      (74 | (24 << 8))
#define MAP_MAGMA_HIDEOUT_B1F                     (75 | (24 << 8))
#define MAP_MAGMA_HIDEOUT_B2F                     (76 | (24 << 8))
#define MAP_SKY_PILLAR_ENTRANCE                   (77 | (24 << 8))
#define MAP_SKY_PILLAR_OUTSIDE                    (78 | (24 << 8))
#define MAP_SKY_PILLAR_1F                         (79 | (24 << 8))
#define MAP_SKY_PILLAR_2F                         (80 | (24 << 8))
#define MAP_SKY_PILLAR_3F                         (81 | (24 << 8))
#define MAP_SKY_PILLAR_4F                         (82 | (24 << 8))
#define MAP_SHOAL_CAVE_LOW_TIDE_ICE_ROOM          (83 | (24 << 8))
#define MAP_SKY_PILLAR_5F                         (84 | (24 << 8))
#define MAP_SKY_PILLAR_TOP                        (85 | (24 << 8))

// Map Group 25
#define MAP_SECRET_BASE_RED_CAVE1    (0 | (25 << 8))
#define MAP_SECRET_BASE_BROWN_CAVE1  (1 | (25 << 8))
#define MAP_SECRET_BASE_BLUE_CAVE1   (2 | (25 << 8))
#define MAP_SECRET_BASE_YELLOW_CAVE1 (3 | (25 << 8))
#define MAP_SECRET_BASE_TREE1        (4 | (25 << 8))
#define MAP_SECRET_BASE_SHRUB1       (5 | (25 << 8))
#define MAP_SECRET_BASE_RED_CAVE2    (6 | (25 << 8))
#define MAP_SECRET_BASE_BROWN_CAVE2  (7 | (25 << 8))
#define MAP_SECRET_BASE_BLUE_CAVE2   (8 | (25 << 8))
#define MAP_SECRET_BASE_YELLOW_CAVE2 (9 | (25 << 8))
#define MAP_SECRET_BASE_TREE2        (10 | (25 << 8))
#define MAP_SECRET_BASE_SHRUB2       (11 | (25 << 8))
#define MAP_SECRET_BASE_RED_CAVE3    (12 | (25 << 8))
#define MAP_SECRET_BASE_BROWN_CAVE3  (13 | (25 << 8))
#define MAP_SECRET_BASE_BLUE_CAVE3   (14 | (25 << 8))
#define MAP_SECRET_BASE_YELLOW_CAVE3 (15 | (25 << 8))
#define MAP_SECRET_BASE_TREE3        (16 | (25 << 8))
#define MAP_SECRET_BASE_SHRUB3       (17 | (25 << 8))
#define MAP_SECRET_BASE_RED_CAVE4    (18 | (25 << 8))
#define MAP_SECRET_BASE_BROWN_CAVE4  (19 | (25 << 8))
#define MAP_SECRET_BASE_BLUE_CAVE4   (20 | (25 << 8))
#define MAP_SECRET_BASE_YELLOW_CAVE4 (21 | (25 << 8))
#define MAP_SECRET_BASE_TREE4        (22 | (25 << 8))
#define MAP_SECRET_BASE_SHRUB4       (23 | (25 << 8))
#define MAP_SINGLE_BATTLE_COLOSSEUM  (24 | (25 << 8))
#define MAP_TRADE_CENTER             (25 | (25 << 8))
#define MAP_RECORD_CORNER            (26 | (25 << 8))
#define MAP_DOUBLE_BATTLE_COLOSSEUM  (27 | (25 << 8))
#define MAP_LINK_CONTEST_ROOM1       (28 | (25 << 8))
#define MAP_UNKNOWN_MAP_25_29        (29 | (25 << 8))
#define MAP_UNKNOWN_MAP_25_30        (30 | (25 << 8))
#define MAP_UNKNOWN_MAP_25_31        (31 | (25 << 8))
#define MAP_UNKNOWN_MAP_25_32        (32 | (25 << 8))
#define MAP_UNKNOWN_MAP_25_33        (33 | (25 << 8))
#define MAP_UNKNOWN_MAP_25_34        (34 | (25 << 8))
#define MAP_LINK_CONTEST_ROOM2       (35 | (25 << 8))
#define MAP_LINK_CONTEST_ROOM3       (36 | (25 << 8))
#define MAP_LINK_CONTEST_ROOM4       (37 | (25 << 8))
#define MAP_LINK_CONTEST_ROOM5       (38 | (25 << 8))
#define MAP_LINK_CONTEST_ROOM6       (39 | (25 << 8))
#define MAP_INSIDE_OF_TRUCK          (40 | (25 << 8))
#define MAP_SS_TIDAL_CORRIDOR        (41 | (25 << 8))
#define MAP_SS_TIDAL_LOWER_DECK      (42 | (25 << 8))
#define MAP_SS_TIDAL_ROOMS           (43 | (25 << 8))

// Map Group 26
#define MAP_SAFARI_ZONE_NORTHWEST    (0 | (26 << 8))
#define MAP_SAFARI_ZONE_NORTHEAST    (1 | (26 << 8))
#define MAP_SAFARI_ZONE_SOUTHWEST    (2 | (26 << 8))
#define MAP_SAFARI_ZONE_SOUTHEAST    (3 | (26 << 8))
#define MAP_BATTLE_TOWER_OUTSIDE     (4 | (26 << 8))
#define MAP_BATTLE_TOWER_LOBBY       (5 | (26 << 8))
#define MAP_BATTLE_TOWER_ELEVATOR    (6 | (26 << 8))
#define MAP_BATTLE_TOWER_CORRIDOR    (7 | (26 << 8))
#define MAP_BATTLE_TOWER_BATTLE_ROOM (8 | (26 << 8))
#define MAP_SOUTHERN_ISLAND_EXTERIOR (9 | (26 << 8))
#define MAP_SOUTHERN_ISLAND_INTERIOR (10 | (26 << 8))
#define MAP_SAFARI_ZONE_REST_HOUSE   (11 | (26 << 8))

// Map Group 27
#define MAP_ROUTE104_PROTOTYPE                          (0 | (27 << 8))
#define MAP_ROUTE104_PROTOTYPE_PRETTY_PETAL_FLOWER_SHOP (1 | (27 << 8))

// Map Group 28
#define MAP_ROUTE109_SEASHORE_HOUSE (0 | (28 << 8))

// Map Group 29
#define MAP_ROUTE110_TRICK_HOUSE_ENTRANCE                (0 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_END                     (1 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_CORRIDOR                (2 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE1                 (3 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE2                 (4 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE3                 (5 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE4                 (6 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE5                 (7 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE6                 (8 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE7                 (9 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE8                 (10 | (29 << 8))
#define MAP_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE (11 | (29 << 8))
#define MAP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE (12 | (29 << 8))

// Map Group 30
#define MAP_ROUTE113_GLASS_WORKSHOP (0 | (30 << 8))

// Map Group 31
#define MAP_ROUTE123_BERRY_MASTERS_HOUSE (0 | (31 << 8))

// Map Group 32
#define MAP_ROUTE119_WEATHER_INSTITUTE_1F (0 | (32 << 8))
#define MAP_ROUTE119_WEATHER_INSTITUTE_2F (1 | (32 << 8))
#define MAP_ROUTE119_HOUSE                (2 | (32 << 8))

// Map Group 33
#define MAP_ROUTE124_DIVING_TREASURE_HUNTERS_HOUSE (0 | (33 << 8))

#define MAP_GROUPS_COUNT 34

#endif // GUARD_CONSTANTS_MAP_GROUPS_H
